package com.entity;

import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;

import java.lang.reflect.InvocationTargetException;

import java.io.Serializable;
import java.util.Date;

import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.beanutils.BeanUtils;
import com.baomidou.mybatisplus.enums.IdType;

/**
 * 课程评价实体类
 * */
@Data
@TableName("course_assessment")
public class CourseAssessmentEntity<T> implements Serializable {
	private static final long serialVersionUID = 1L;


	public CourseAssessmentEntity() {

	}

	public CourseAssessmentEntity(T t) {
		try {
			BeanUtils.copyProperties(this, t);
		} catch (IllegalAccessException | InvocationTargetException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	/**
	 * 主键id
	 */
    @TableId(type = IdType.AUTO)
    private Long id;
	/**
	 * 课程名称
	 */

	private String courseName;

	/**
	 * 课程类型
	 */

	private String courseType;

	/**
	 * 课程图片
	 */

	private String avatar;

	/**
	 * 教学目标
	 */

	private String teachingTarget;

	/**
	 * 教学方法
	 */

	private String teachingMethod;

	/**
	 * 教学内容
	 */

	private String teachingContent;

	/**
	 * 教学效果
	 */

	private String teachingEffect;

	/**
	 * 评价时间
	 */

	@JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd")
	@DateTimeFormat
	private Date commentTime;

	/**
	 * 评价建议
	 */

	private String suggestion;

	/**
	 * 用户账号
	 */

	private String username;

	/**
	 * 用户姓名
	 */

	private String name;

	/**
	 * 是否审核
	 */

	private String isAudited;

	/**
	 * 审核回复
	 */

	private String auditResponse;

}
